package com.kingsoft.miot.bridge.dao;

import java.util.List;
import java.util.Set;

import org.apache.ibatis.annotations.Param;

import com.kingsoft.miot.bridge.pojo.hotel.HotelInfo;

public interface HotelInfoDao {

	/**
	 * 插入一条记录
	 */
	public void insertOne(HotelInfo hotelInfo);

	/**
	 * 查询所有记录
	 * 
	 * @return
	 */
	public List<HotelInfo> findAll();

	/**
	 * 更新
	 * 
	 * @param hotelInfo
	 * @return
	 */
	public int update(HotelInfo hotelInfo);
	
	/**
	 * 批量跟新数据
	 * @param hotelInfoList
	 * @return
	 */
	public int updateList(List<HotelInfo> hotelInfoList);

	/**
	 * 通过hotel id查询
	 * 
	 * @param hotel_id
	 * @return
	 */
	public HotelInfo getById(int hotel_info_id);

	/**
	 * 获取酒店 当管理者邮箱存在该酒店管理者邮箱列表时
	 * 
	 * @param hotel_info_managers
	 * @return
	 */
	public List<HotelInfo> getListByManagerEmail(String hotel_info_manager);

	/**
	 * 通过 name 获取hotel info
	 * 
	 * @return
	 */
	public HotelInfo getByName(String hotel_info_name);

	/**
	 * 通过批量查询
	 * 
	 * @param authIdList
	 * @return
	 */
	public List<HotelInfo> getByAuthUnitIdList(@Param("authIdList") Set<Integer> authIdList);
	
	
	/**
	 * 通过authUnit Id 获取
	 * @param authUnitId
	 * @return
	 */
	public HotelInfo getByAuthUnitId(int authUnitId);
	
	
	/**
	 * 通过酒店id 批量查询
	 * 
	 * @param hotelIdList
	 * @return
	 */
	public List<HotelInfo> getByHotelIdList(@Param("hotelIdList") Set<Integer> hotelIdList);

}
